package com.jumi.microservice.domain.vo;

import com.baomidou.mybatisplus.annotation.TableField;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.jumi.microservice.common.base.AbstractObject;
import io.swagger.annotations.ApiModelProperty;
import org.hibernate.validator.constraints.Length;
import org.hibernate.validator.constraints.Range;

import javax.validation.constraints.NotBlank;
import java.io.Serializable;
import java.time.LocalDateTime;

public class ArticleVO extends AbstractObject implements Serializable {
    @ApiModelProperty(value = "文章id")
    private Long id;
    @ApiModelProperty(value = "分类id")
    private Long acid;
    @ApiModelProperty(value = "分类名称")
    @TableField(exist = false)
    private String acName;
    @ApiModelProperty(value = "父级名称")
    @TableField(exist = false)
    private String acParentName;
    @ApiModelProperty(value = "标题")
    @NotBlank(message = "标题不能为空")
    @Length(max = 10,message = "部门名称长度不能超过10个字符")
    private String articleTitle;
    @NotBlank(message = "内容不能为空")
    @ApiModelProperty(value = "内容")
    private String articleContent;
    @ApiModelProperty(value = "排序")
    @Range(min = 0,max = 999, message = "排序的取值范围0-999")
    private Integer sort;
    @ApiModelProperty(value = "状态，1启用，0.禁用")
    private Integer status;
    @ApiModelProperty(value = "是否删除(0:否,1:是)")
    private Integer isDel;
    @ApiModelProperty(value = "添加人")
    private String creater;
    @ApiModelProperty(value = "添加时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime createTime;
    @ApiModelProperty(value = "修改人")
    private String modifier;
    @ApiModelProperty(value = "修改时间")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime updateTime;
    @ApiModelProperty(value = "添加开始时间")
    private String startTimeAdd;
    @ApiModelProperty(value = "添加结束时间")
    private String endTimeAdd;
    @ApiModelProperty(value = "修改开始时间")
    private String startTimeUp;
    @ApiModelProperty(value = "修改结束时间")
    private String endTimeUp;

    public LocalDateTime getCreateTime() {
        return createTime;
    }

    public void setCreateTime(LocalDateTime createTime) {
        this.createTime = createTime;
    }

    public LocalDateTime getUpdateTime() {
        return updateTime;
    }

    public void setUpdateTime(LocalDateTime updateTime) {
        this.updateTime = updateTime;
    }

    public String getAcParentName() {
        return acParentName;
    }

    public void setAcParentName(String acParentName) {
        this.acParentName = acParentName;
    }

    public String getAcName() {
        return acName;
    }

    public void setAcName(String acName) {
        this.acName = acName;
    }

    public Integer getIsDel() {
        return isDel;
    }

    public void setIsDel(Integer isDel) {
        this.isDel = isDel;
    }

    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public Long getAcid() {
        return acid;
    }

    public void setAcid(Long acid) {
        this.acid = acid;
    }

    public String getArticleTitle() {
        return articleTitle;
    }

    public void setArticleTitle(String article_title) {
        this.articleTitle = article_title;
    }

    public String getArticleContent() {
        return articleContent;
    }

    public void setArticleContent(String article_content) {
        this.articleContent = article_content;
    }

    public Integer getSort() {
        return sort;
    }

    public void setSort(Integer sort) {
        this.sort = sort;
    }

    public Integer getStatus() {
        return status;
    }

    public void setStatus(Integer status) {
        this.status = status;
    }

    public String getCreater() {
        return creater;
    }

    public void setCreater(String creater) {
        this.creater = creater;
    }

    public String getModifier() {
        return modifier;
    }

    public void setModifier(String modifier) {
        this.modifier = modifier;
    }

    public String getStartTimeAdd() {
        return startTimeAdd;
    }

    public void setStartTimeAdd(String startTimeAdd) {
        this.startTimeAdd = startTimeAdd;
    }

    public String getEndTimeAdd() {
        return endTimeAdd;
    }

    public void setEndTimeAdd(String endTimeAdd) {
        this.endTimeAdd = endTimeAdd;
    }

    public String getStartTimeUp() {
        return startTimeUp;
    }

    public void setStartTimeUp(String startTimeUp) {
        this.startTimeUp = startTimeUp;
    }

    public String getEndTimeUp() {
        return endTimeUp;
    }

    public void setEndTimeUp(String endTimeUp) {
        this.endTimeUp = endTimeUp;
    }
}
